Corrected Quarterly Results of my Master’s Thesis
This document presents the results of the quarterly event studies conducted for my Master’s Thesis using different specifications of fixed effects (FE).
During my final presentation, we discussed whether I had employed yearly instead of quarterly fixed effects in order to better isolate the effects of my hypotheses from potential seasonal variations.
Upon reviewing my code, I found that I had used time-unit fixed effects, meaning that each quarter was treated as a separate time period rather than as the same quarter across years. Therefore, I additionally experimented with specifications including (i) quarter fixed effects independent of the year and (ii) both quarter and year fixed effects simultaneously.
I now also added plots of averages over time and histograms
While inspecting the descriptive data I discovered an error in the computation of district-level radiance. I summed all pixel-level radiance values using
extract(light_masked, gadm_vector,
fun = sum,
na.rm = TRUE)
This led to biased data toward districts with a larger area because they contain more pixels. As a result, for example, Taliban-controlled districts appeared brighter simply because they were larger and histograms were rather normally distributed.
I now changed the aggregation to
fun = mean
to obtain average radiance per pixel and re-estimated the results.
Event Studies
For 2022 ban:
For 2023 “effective” ban
Quarters 1 and 2 after the Taliban takeover show a positive effect, weakly significant (10%) effect.
model_event_tali <- feols(
ln_ntl ~ i(event_time, tali_cont_bin_1, ref = -1) |
district_fe +
time_id,
data = ntl_quart_event_tali,
cluster = ~NAME_1
# NAME_1 is province.model_event_tali <- feols(
ln_ntl ~ i(event_time, tali_cont_bin_1, ref = -1) |
factor(quarter) +
year +
district_fe,
data = ntl_quart_event_tali,
cluster = ~NAME_1
)model_event_tali <- feols(
ln_ntl ~ i(event_time, tali_cont_bin_1, ref = -1) |
factor(quarter) +
district_fe,
data = ntl_quart_event_tali,
cluster = ~NAME_1
)event_model_quart_nato <- feols(
ln_ntl ~ i(event_time, any_military, ref = -1) |
GID_2 +
time_id,
data = did_data_quart_nato,
cluster = ~GID_1
)
# GID_2 is District code and GID_1 is province codeevent_model_year_and_quarter <- feols(
ln_ntl ~ i(event_time, any_military, ref = -1) |
GID_2 +
year +
factor(quarter),
data = did_data_quart_nato,
cluster = ~ GID_1
)event_model_quarterFE <- feols(
ln_ntl ~ i(event_time, any_military, ref = -1) |
GID_2 +
factor(quarter),
data = did_data_quart_nato,
cluster = ~ GID_1
)Descriptive Plots
Average Plots over Time
To compare, here the yearly graph:
To compare, here the yearly graph:
Histograms
| Taliban Controlled | Count |
|---|---|
| 0 | 302 |
| 1 | 26 |
To compare, here the yearly graph:
Urbanity
To understand whether the (NATO) effects are partly driven by urban–rural differences, I create a measure of “urbanity” using VIIRS Nighttime Lights.
For each district, I take the maximum quarterly radiance value (max_ntl) and place it in the percentile distribution of all districts.
I then define three categories:
- major_urban: top 5% brightest districts
- mid_urban: 5% - 15% brightest districts
- rural: all remaining districts
Descriptive pattern: Urbanity and NATO presence
The table below shows how many observations in each group are NATO-treated.
This is useful to see whether the treatment is spatially concentrated.
| Urbanity category | n_total | n_NATO | share NATO |
|---|---|---|---|
| major_urban | 504 | 336 | 66.7% |
| mid_urban | 840 | 364 | 43.3% |
Alternative Event studies
Urbanity as fixed effect
I created an urbanity category as explained before.
event_model_quart_nato_urbanFE <- feols(
ln_ntl ~ i(event_time, any_military, ref = -1) |
GID_2 + time_id + urban_category,
data = did_data_quart_nato,
cluster = ~GID_1
)Further possible models
- Exclude Province of Kabul
- Province x Quarter FE (regional temporal shocks)
- District-specific linear trends